home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
TPUG - Toronto PET Users Group
/
TPUG Users Group CD
/
TPUG Users Group CD.iso
/
AMIGA
/
AMICUS
/
AMICUS05.ADF
/
menudemo
/
menu.c
< prev
next >
Wrap
C/C++ Source or Header
|
1986-01-15
|
19KB
|
676 lines
/* menu.c AmigaLink 1/25/86 */
#include "standard.h"
#define MENUPROJECT 0
#define MENUEDIT 1
#define MENUSTYLES 2
#define MENUCOLORS 3
#define BLUE 0
#define WHITE 1
#define BLACK 2
#define RED 3
struct TextAttr Topaz60 = {
"topaz.font",
TOPAZ_SIXTY,
FS_NORMAL,
FPF_ROMFONT
};
struct TextAttr TopazI = {
"topaz.font",
TOPAZ_SIXTY,
FSF_ITALIC,
FPF_ROMFONT
};
struct TextAttr TopazB = {
"topaz.font",
TOPAZ_SIXTY,
FSF_BOLD,
FPF_ROMFONT
};
struct TextAttr TopazU = {
"topaz.font",
TOPAZ_SIXTY,
FSF_UNDERLINED,
FPF_ROMFONT
};
struct IntuiText projectext[] = {
{
BLUE, WHITE, JAM2, /* FrontPen, BackPen, DrawMode */
0, 0, /* LeftEdge, TopEdge */
NULL, /* ITextFont */
"New", /* IText */
NULL /* NextText */
},
{
BLUE, WHITE, JAM2, /* FrontPen, BackPen, DrawMode */
0, 0, /* LeftEdge, TopEdge */
NULL, /* ITextFont */
"Open", /* IText */
NULL /* NextText */
},
{
BLUE, WHITE, JAM2, /* FrontPen, BackPen, DrawMode */
0, 0, /* LeftEdge, TopEdge */
NULL, /* ITextFont */
"Save", /* IText */
NULL /* NextText */
},
{
BLUE, WHITE, JAM2, /* FrontPen, BackPen, DrawMode */
0, 0, /* LeftEdge, TopEdge */
NULL, /* ITextFont */
"Save As", /* IText */
NULL /* NextText */
},
{
BLUE, WHITE, JAM2, /* FrontPen, BackPen, DrawMode */
0, 0, /* LeftEdge, TopEdge */
NULL, /* ITextFont */
"Print", /* IText */
NULL /* NextText */
}
{
BLUE, WHITE, JAM2, /* FrontPen, BackPen, DrawMode */
0, 0, /* LeftEdge, TopEdge */
NULL, /* ITextFont */
"Print As", /* IText */
NULL /* NextText */
}
{
BLUE, WHITE, JAM2, /* FrontPen, BackPen, DrawMode */
0, 0, /* LeftEdge, TopEdge */
NULL, /* ITextFont */
"Quit", /* IText */
NULL /* NextText */
}
};
struct IntuiText printsubtext[]= {
{
BLUE, WHITE, JAM2, /* FrontPen, BackPen, DrawMode */
0, 0, /* LeftEdge, TopEdge */
NULL, /* ITextFont */
"Auto-size", /* IText */
NULL /* NextText */
}
{
BLUE, WHITE, JAM2, /* FrontPen, BackPen, DrawMode */
0, 0, /* LeftEdge, TopEdge */
NULL, /* ITextFont */
"Small", /* IText */
NULL /* NextText */
}
{
BLUE, WHITE, JAM2, /* FrontPen, BackPen, DrawMode */
0, 0, /* LeftEdge, TopEdge */
NULL, /* ITextFont */
"Medium", /* IText */
NULL /* NextText */
}
{
BLUE, WHITE, JAM2, /* FrontPen, BackPen, DrawMode */
0, 0, /* LeftEdge, TopEdge */
NULL, /* ITextFont */
"Large", /* IText */
NULL /* NextText */
}
};
struct IntuiText printsubtext2[]= {
{
BLUE, WHITE, JAM2, /* FrontPen, BackPen, DrawMode */
CHECKWIDTH, 0, /* LeftEdge, TopEdge */
NULL, /* ITextFont */
"Graphic", /* IText */
NULL /* NextText */
}
{
BLUE, WHITE, JAM2, /* FrontPen, BackPen, DrawMode */
CHECKWIDTH, 0, /* LeftEdge, TopEdge */
NULL, /* ITextFont */
"Draft", /* IText */
NULL /* NextText */
}
};
struct IntuiText editext[] = {
{
BLUE, WHITE, JAM2, /* FrontPen, BackPen, DrawMode */
0, 0, /* LeftEdge, TopEdge */
NULL, /* ITextFont */
"Undo", /* IText */
NULL /* NextText */
},
{
BLUE, WHITE, JAM2, /* FrontPen, BackPen, DrawMode */
0, 0, /* LeftEdge, TopEdge */
NULL, /* ITextFont */
"Cut", /* IText */
NULL /* NextText */
},
{
BLUE, WHITE, JAM2, /* FrontPen, BackPen, DrawMode */
0, 0, /* LeftEdge, TopEdge */
NULL, /* ITextFont */
"Copy", /* IText */
NULL /* NextText */
},
{
BLUE, WHITE, JAM2, /* FrontPen, BackPen, DrawMode */
0, 0, /* LeftEdge, TopEdge */
NULL, /* ITextFont */
"Paste", /* IText */
NULL /* NextText */
},
{
BLUE, WHITE, JAM2, /* FrontPen, BackPen, DrawMode */
0, 0, /* LeftEdge, TopEdge */
NULL, /* ITextFont */
"Erase", /* IText */
NULL /* NextText */
},
};
struct IntuiText styletext[] = {
{
BLUE, WHITE, JAM2, /* FrontPen, BackPen, DrawMode */
CHECKWIDTH, 0, /* LeftEdge, TopEdge */
NULL, /* ITextFont */
"Plain", /* IText */
NULL /* NextText */
},
{
BLUE, WHITE, JAM2, /* FrontPen, BackPen, DrawMode */
CHECKWIDTH, 0, /* LeftEdge, TopEdge */
&TopazI, /* ITextFont */
"Italic", /* IText */
NULL /* NextText */
},
{
BLUE, WHITE, JAM2, /* FrontPen, BackPen, DrawMode */
CHECKWIDTH, 0, /* LeftEdge, TopEdge */
&TopazB, /* ITextFont */
"Bold", /* IText */
NULL /* NextText */
},
{
BLUE, WHITE, JAM2, /* FrontPen, BackPen, DrawMode */
CHECKWIDTH, 0, /* LeftEdge, TopEdge */
&TopazU, /* ITextFont */
"Underline", /* IText */
NULL /* NextText */
}
};
struct IntuiText formatext[] = {
{
BLUE, WHITE, JAM2, /* FrontPen, BackPen, DrawMode */
0, 0, /* LeftEdge, TopEdge */
NULL, /* ITextFont */
"Paper Color", /* IText */
NULL /* NextText */
},
{
BLUE, WHITE, JAM2, /* FrontPen, BackPen, DrawMode */
0, 0, /* LeftEdge, TopEdge */
NULL, /* ITextFont */
"Pen Color", /* IText */
NULL /* NextText */
},
};
struct IntuiText colortext[] = {
{
BLUE, 0 , JAM2, /* FrontPen, BackPen, DrawMode */
CHECKWIDTH, 0, /* LeftEdge, TopEdge */
NULL, /* ITextFont */
" ", /* IText */
NULL /* NextText */
},
{
BLUE, 1, JAM2, /* FrontPen, BackPen, DrawMode */
CHECKWIDTH, 0, /* LeftEdge, TopEdge */
NULL, /* ITextFont */
" ", /* IText */
NULL /* NextText */
},
{
BLUE, 2, JAM2, /* FrontPen, BackPen, DrawMode */
CHECKWIDTH, 0, /* LeftEdge, TopEdge */
NULL, /* ITextFont */
" ", /* IText */
NULL /* NextText */
},
{
BLUE, 3, JAM2, /* FrontPen, BackPen, DrawMode */
CHECKWIDTH, 0, /* LeftEdge, TopEdge */
NULL, /* ITextFont */
" ", /* IText */
NULL /* NextText */
}
};
struct MenuItem printsubitems[] ={
{
&printsubitems[1], /* next item */
110, 0, 110, 9, /* LeftEdge, TopEdge, Width, Height */
ITEMENABLED | ITEMTEXT | HIGHCOMP,
0, /* mutual exclude */
(APTR)&printsubtext[0],/* ItemFill */
NULL, /* SelectFill */
NULL, /* Command */
NULL, /* SubItem */
NULL /* NextSelect */
},
{
&printsubitems[2], /* next item */
110, 10, 110, 9, /* LeftEdge, TopEdge, Width, Height */
ITEMENABLED | ITEMTEXT | HIGHCOMP,
0, /* mutual exclude */
(APTR)&printsubtext[1],/* ItemFill */
NULL, /* SelectFill */
NULL, /* Command */
NULL, /* SubItem */
NULL /* NextSelect */
},
{
&printsubitems[3], /* next item */
110, 20, 110, 9, /* LeftEdge, TopEdge, Width, Height */
ITEMENABLED | ITEMTEXT | HIGHCOMP,
0, /* mutual exclude */
(APTR)&printsubtext[2],/* ItemFill */
NULL, /* SelectFill */
NULL, /* Command */
NULL, /* SubItem */
NULL /* NextSelect */
},
{
NULL, /* next item */
110, 30, 110, 9, /* LeftEdge, TopEdge, Width, Height */
ITEMENABLED | ITEMTEXT | HIGHCOMP,
0, /* mutual exclude */
(APTR)&printsubtext[3],/* ItemFill */
NULL, /* SelectFill */
NULL, /* Command */
NULL, /* SubItem */
NULL /* NextSelect */
},
};
struct MenuItem printsubitems2[] ={
{
&printsubitems2[1], /* next item */
110, 0, 110, 9, /* LeftEdge, TopEdge, Width, Height */
ITEMENABLED | ITEMTEXT | HIGHCOMP | CHECKIT | CHECKED,
0xFFFF-1, /* mutual exclude */
(APTR)&printsubtext2[0],/* ItemFill */
NULL, /* SelectFill */
NULL, /* Command */
NULL, /* SubItem */
NULL /* NextSelect */
},
{
NULL, /* next item */
110, 10, 110, 9, /* LeftEdge, TopEdge, Width, Height */
ITEMENABLED | ITEMTEXT | HIGHCOMP | CHECKIT,
0xFFFF-2, /* mutual exclude */
(APTR)&printsubtext2[1],/* ItemFill */
NULL, /* SelectFill */
NULL, /* Command */
NULL, /* SubItem */
NULL /* NextSelect */
},
};
struct MenuItem projectitems[] = {
{
&projectitems[1], /* next item */
0, 0, 100, 9, /* LeftEdge, TopEdge, Width, Height */
ITEMENABLED | ITEMTEXT | HIGHCOMP,
0, /* mutual exclude */
(APTR)&projectext[0],/* ItemFill */
NULL, /* SelectFill */
NULL, /* Command */
NULL, /* SubItem */
NULL /* NextSelect */
},
{
&projectitems[2], /* next item */
0, 10, 100, 9, /* LeftEdge, TopEdge, Width, Height */
ITEMENABLED | ITEMTEXT | HIGHCOMP,
0, /* mutual exclude */
(APTR)&projectext[1],/* ItemFill */
NULL, /* SelectFill */
NULL, /* Command */
NULL, /* SubItem */
NULL /* NextSelect */
},
{
&projectitems[3], /* next item */
0, 20, 100, 9, /* LeftEdge, TopEdge, Width, Height */
ITEMENABLED | ITEMTEXT | HIGHCOMP,
0, /* mutual exclude */
(APTR)&projectext[2],/* ItemFill */
NULL, /* SelectFill */
NULL, /* Command */
NULL, /* SubItem */
NULL /* NextSelect */
},
{
&projectitems[4], /* next item */
0, 30, 100, 9, /* LeftEdge, TopEdge, Width, Height */
ITEMENABLED | ITEMTEXT | HIGHCOMP,
0, /* mutual exclude */
(APTR)&projectext[3],/* ItemFill */
NULL, /* SelectFill */
NULL, /* Command */
NULL, /* SubItem */
NULL /* NextSelect */
},
{
&projectitems[5], /* next item */
0, 40, 100, 9, /* LeftEdge, TopEdge, Width, Height */
ITEMENABLED | ITEMTEXT | HIGHCOMP,
0, /* mutual exclude */
(APTR)&projectext[4],/* ItemFill */
NULL, /* SelectFill */
NULL, /* Command */
printsubitems, /* SubItem */
NULL /* NextSelect */
},
{
&projectitems[6], /* next item */
0, 50, 100, 9, /* LeftEdge, TopEdge, Width, Height */
ITEMENABLED | ITEMTEXT | HIGHCOMP,
0, /* mutual exclude */
(APTR)&projectext[5],/* ItemFill */
NULL, /* SelectFill */
NULL, /* Command */
printsubitems2, /* SubItem */
NULL /* NextSelect */
},
{
NULL, /* next item */
0, 60, 100, 9, /* LeftEdge, TopEdge, Width, Height */
ITEMENABLED | ITEMTEXT | HIGHCOMP,
0, /* mutual exclude */
(APTR)&projectext[6],/* ItemFill */
NULL, /* SelectFill */
NULL, /* Command */
NULL, /* SubItem */
NULL /* NextSelect */
}
};
struct MenuItem edititems[] = {
{
&edititems[1], /* next item */
0, 0, 100, 9, /* LeftEdge, TopEdge, Width, Height */
ITEMTEXT | HIGHCOMP,
0, /* mutual exclude */
(APTR)&editext[0], /* ItemFill */
NULL, /* SelectFill */
NULL, /* Command */
NULL, /* SubItem */
NULL /* NextSelect */
},
{
&edititems[2], /* next item */
0, 10, 100, 9, /* LeftEdge, TopEdge, Width, Height */
ITEMENABLED | ITEMTEXT | HIGHCOMP,
0, /* mutual exclude */
(APTR)&editext[1],/* ItemFill */
NULL, /* SelectFill */
NULL, /* Command */
NULL, /* SubItem */
NULL /* NextSelect */
},
{
&edititems[3], /* next item */
0, 20, 100, 9, /* LeftEdge, TopEdge, Width, Height */
ITEMENABLED | ITEMTEXT | HIGHCOMP,
0, /* mutual exclude */
(APTR)&editext[2],/* ItemFill */
NULL, /* SelectFill */
NULL, /* Command */
NULL, /* SubItem */
NULL /* NextSelect */
},
{
&edititems[4], /* next item */
0, 30, 100, 9, /* LeftEdge, TopEdge, Width, Height */
ITEMENABLED | ITEMTEXT | HIGHCOMP,
0, /* mutual exclude */
(APTR)&editext[3],/* ItemFill */
NULL, /* SelectFill */
NULL, /* Command */
NULL, /* SubItem */
NULL /* NextSelect */
},
{
NULL, /* next item */
0, 40, 100, 9, /* LeftEdge, TopEdge, Width, Height */
ITEMENABLED | ITEMTEXT | HIGHCOMP,
0, /* mutual exclude */
(APTR)&editext[4],/* ItemFill */
NULL, /* SelectFill */
NULL, /* Command */
NULL, /* SubItem */
NULL /* NextSelect */
},
};
struct MenuItem styleitems[] = {
{
&styleitems[1], /* next item */
0,0,120+COMMWIDTH,9, /* LeftEdge, TopEdge, Width, Height */
ITEMENABLED | ITEMTEXT | HIGHCOMP | CHECKIT | COMMSEQ,
0xffff-1, /* mutual exclude */
(APTR)&styletext[0],/* ItemFill */
NULL, /* SelectFill */
'P', /* Command */
NULL, /* SubItem */
NULL /* NextSelect */
},
{
&styleitems[2], /* next item */
0,10,120+COMMWIDTH,9, /* LeftEdge, TopEdge, Width, Height */
ITEMENABLED | ITEMTEXT | HIGHCOMP | CHECKIT | COMMSEQ,
1, /* mutual exclude */
(APTR)&styletext[1],/* ItemFill */
NULL, /* SelectFill */
'I', /* Command */
NULL, /* SubItem */
NULL /* NextSelect */
},
{
&styleitems[3], /* next item */
0,20,120+COMMWIDTH,9, /* LeftEdge, TopEdge, Width, Height */
ITEMENABLED | ITEMTEXT | HIGHCOMP | CHECKIT | COMMSEQ,
1, /* mutual exclude */
(APTR)&styletext[2],/* ItemFill */
NULL, /* SelectFill */
'B', /* Command */
NULL, /* SubItem */
NULL /* NextSelect */
},
{
NULL, /* next item */
0,30,120+COMMWIDTH,9, /* LeftEdge, TopEdge, Width, Height */
ITEMENABLED | ITEMTEXT | HIGHCOMP | CHECKIT | COMMSEQ,
1, /* mutual exclude */
(APTR)&styletext[3],/* ItemFill */
NULL, /* SelectFill */
'U', /* Command */
NULL, /* SubItem */
NULL /* NextSelect */
},
};
struct MenuItem coloritems[] = {
{
&coloritems[1], /* next item */
110,0,50,9, /* LeftEdge, TopEdge, Width, Height */
ITEMENABLED | ITEMTEXT | HIGHBOX | CHECKIT,
0xFFFF-1, /* mutual exclude */
(APTR)&colortext[0],/* ItemFill */
NULL, /* SelectFill */
NULL, /* Command */
NULL, /* SubItem */
NULL /* NextSelect */
},
{
&coloritems[2], /* next item */
110,10,50,9, /* LeftEdge, TopEdge, Width, Height */
ITEMENABLED | ITEMTEXT | HIGHBOX | CHECKIT | CHECKED,
0xFFFF-2, /* mutual exclude */
(APTR)&colortext[1],/* ItemFill */
NULL, /* SelectFill */
NULL, /* Command */
NULL, /* SubItem */
NULL /* NextSelect */
},
{
&coloritems[3], /* next item */
110,20,50,9, /* LeftEdge, TopEdge, Width, Height */
ITEMENABLED | ITEMTEXT | HIGHBOX | CHECKIT,
0xFFFF-4, /* mutual exclude */
(APTR)&colortext[2],/* ItemFill */
NULL, /* SelectFill */
NULL, /* Command */
NULL, /* SubItem */
NULL /* NextSelect */
},
{
NULL, /* next item */
110,30,50,9, /* LeftEdge, TopEdge, Width, Height */
ITEMENABLED | ITEMTEXT | HIGHBOX | CHECKIT,
0xFFFF-8, /* mutual exclude */
(APTR)&colortext[3],/* ItemFill */
NULL, /* SelectFill */
NULL, /* Command */
NULL, /* SubItem */
NULL /* NextSelect */
},
};
struct MenuItem pcoloritems[] = {
{
&pcoloritems[1], /* next item */
110,0,50,9 , /* LeftEdge, TopEdge, Width, Height */
ITEMENABLED | ITEMTEXT | HIGHBOX | CHECKIT,
0xFFFF-0x01, /* mutual exclude */
(APTR)&colortext[0],/* ItemFill */
NULL, /* SelectFill */
NULL, /* Command */
NULL, /* SubItem */
NULL /* NextSelect */
},
{
&pcoloritems[2], /* next item */
110,10,50,9, /* LeftEdge, TopEdge, Width, Height */
ITEMENABLED | ITEMTEXT | HIGHBOX | CHECKIT,
0xFFFF-0x02, /* mutual exclude */
(APTR)&colortext[1],/* ItemFill */
NULL, /* SelectFill */
NULL, /* Command */
NULL, /* SubItem */
NULL /* NextSelect */
},
{
&pcoloritems[3], /* next item */
110,20,50,9, /* LeftEdge, TopEdge, Width, Height */
ITEMENABLED | ITEMTEXT | HIGHBOX | CHECKIT | CHECKED,
0xFFFF-0x04, /* mutual exclude */
(APTR)&colortext[2],/* ItemFill */
NULL, /* SelectFill */
NULL, /* Command */
NULL, /* SubItem */
NULL /* NextSelect */
},
{
NULL, /* next item */
110,30,50,9, /* LeftEdge, TopEdge, Width, Height */
ITEMENABLED | ITEMTEXT | HIGHBOX | CHECKIT,
0xFFFF-0x08, /* mutual exclude */
(APTR)&colortext[3],/* ItemFill */
NULL, /* SelectFill */
NULL, /* Command */
NULL, /* SubItem */
NULL /* NextSelect */
},
};
struct MenuItem formatitems[] = {
{
&formatitems[1], /* next item */
0,0,110,9, /* LeftEdge, TopEdge, Width, Height */
ITEMENABLED | ITEMTEXT | HIGHCOMP,
0xFFFF-1, /* mutual exclude */
(APTR)&formatext[0],/* ItemFill */
NULL, /* SelectFill */
NULL, /* Command */
coloritems, /* SubItem */
NULL /* NextSelect */
},
{
NULL, /* next item */
0,10,110,9, /* LeftEdge, TopEdge, Width, Height */
ITEMENABLED | ITEMTEXT | HIGHCOMP,
0xFFFF-2, /* mutual exclude */
(APTR)&formatext[1],/* ItemFill */
NULL, /* SelectFill */
NULL, /* Command */
pcoloritems, /* SubItem */
NULL /* NextSelect */
},
};
struct Menu menus[] = {
{
&menus[1], /* next menu */
10+0, 0, 100, 0, /* LeftEdge, TopEdge, Width, Height */
MENUENABLED, /* flags */
"Project", /* name */
projectitems /* first item */
},
{
&menus[2], /* next menu */
10+100, 0, 100, 0, /* LeftEdge, TopEdge, Width, Height */
NULL, /* flags */
"Edit", /* name */
edititems /* first item */
},
{
&menus[3], /* next menu */
10+300, 0, 100, 0, /* LeftEdge, TopEdge, Width, Height */
MENUENABLED, /* flags */
"Style", /* name */
styleitems /* first item */
},
{
NULL, /* next menu */
10+400, 0, 100, 0, /* LeftEdge, TopEdge, Width, Height */
MENUENABLED, /* flags */
"Format", /* name */
formatitems /* first item */
},
};
initMenus( window )
struct Window *window;
{
SetMenuStrip( window, menus );
}